package com.iris.live.services.services;

import com.iris.live.services.models.RequestBase;
import com.iris.live.services.models.ResultData;

import java.util.List;
import java.util.Map;

/**
 *
 */
public interface ImgtService {

    Map KPI(String name, String startDate, String endDate,
            String role, String roleCode,
            String areaRole, String areaCode,
            String brand, String actualValue,
            String actualValueCode);

    List KPI2(String name, String startDate, String endDate, String role, String roleCode, String areaRole, String areaCode, String brand);

    List getAreaForDealer(String permit);

    List getPermitWithSameLshCoder(String permit);

    List getApprovalUserInfo(String lshPermit, String type);

    ResultData getApprovalUserInfoBrand(String permit, String type);

    ResultData getApprovalUserInfoContract(ImgtService.getApprovalUserInfoContractBody rb, Integer type);

    List getDepartmentByShowRoom(String permit);

    List getPositionByDepartment(String permit, String department);

    List getUserNameByPosition(String permit, String department, String position);

    Map KPIs(String name, String startDate, String endDate, String role, String roleCode, String areaRole, String areaCode, String brand);


    // 库存 第二页
    ResultData getStoreKPISecondPage(KPIPage items);

    // 销售 第二页
    ResultData getSaleKPISecondPage(KPIPage items);


//    // GP 第二页
    ResultData getGPKPISecondPage(KPIPage items);

    class getApprovalUserInfoContractBody extends RequestBase {
        public String permit;
        public String dlName;
        public String bigArea;
        public String role;
    }


    class KPIPage {
        public String name;             // 指标名，60天以上长库龄
        public String timeStatus;       // 日期类型，DTD，MTD
        public String startDate;        // 界面选择日期
        public String role;             // 登录角色  cta 大区 集团
        public String roleCode;         // 登录角色对应的CODE

        public String areaRole;         // 界面对标值
        public String areaCode;         // 界面对标值对应的CODE

        public String actualRole;       // 界面实际值
        public String actualValueCode;  // 界面实际值对应的CODE

        public String modelType;        // 车型模式:1 分级模式: 2
        public String brand;            // 品牌
        public String dataType;         // 库存-1，销售-2，GP-3
        public String areaRank;         // 分级模式下，1-大区，2-cta，3-经销商
    }





}
